/*
 * Copyright (C) 2010-2010 MaoJian Wu
 *
 * Author:
 *	MaoJian Wu
 *
 * Source:
 *	
 *
 * This file is a part of zfspear library.
 *
 *
 */

#ifndef PRESENCE_H
#define PRESENCE_H

#include <QList>
#include "stanzas.h"
class Error;
class Status;
class Presence : public Stanzas
{
    Q_OBJECT
public:
    enum ShowType
    {
        Offline = 0,
        Online,
        Away,
        XA,
        DND,
        Chat,
        Invisible
    };
    Q_INVOKABLE Presence();
    void SetShow(ShowType show);
    QString Show();
    void SetStatus(QList<QString> statusList);
    void SetStatus(QList<Status*> statusList);
    void SetStatus(const QString& status);
    QString GetStatus();
    QList<Status*> StatusList();
    void SetPriority(int priority);
    int Priority();
    QString StanzaKind();
    Error* Error();
signals:

public slots:

};

#endif // PRESENCE_H
